Spring Boot ORM প্রোগ্রামের মাধ্যমে সহজে একটি "Hello World" লেভেলের ডেটাবেস CRUD অপারেশন তৈরি করা যায়। এখানে একটি উদাহরণ দেওয়া হলো যা Spring Boot এবং JPA ব্যবহার করে ডেটাবেস থেকে ডেটা যোগ, পড়া, আপডেট এবং মুছে ফেলার প্রাথমিক ধারণা দেয়।
প্রয়োজনীয় ধাপসমূহ
১. প্রকল্প তৈরি
Spring Initializr ব্যবহার করে একটি Spring Boot প্রকল্প তৈরি করুন। নিচের ডিপেনডেন্সিগুলো যুক্ত করুন:
- Spring Web
- Spring Data JPA
- H2 Database
২. Maven ডিপেনডেন্সি
pom.xml ফাইলে ডিপেনডেন্সি যোগ করুন:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
৩. ডেটাবেস কনফিগারেশন
application.properties ফাইলে H2 ডেটাবেসের জন্য কনফিগারেশন যোগ করুন:
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.hibernate.ddl-auto=update
৪. Entity ক্লাস তৈরি
Employee নামে একটি Entity ক্লাস তৈরি করুন যা ডেটাবেসের টেবিল হিসেবে কাজ করবে।
import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
@Entity
public class Employee {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private String department;
// Getters and Setters
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDepartment() {
return department;
}
public void setDepartment(String department) {
this.department = department;
}
}
৫. Repository ইন্টারফেস তৈরি
Spring Data JPA এর সাহায্যে একটি Repository ইন্টারফেস তৈরি করুন:
import org.springframework.data.jpa.repository.JpaRepository;
public interface EmployeeRepository extends JpaRepository<Employee, Long> {
}
৬. কন্ট্রোলার তৈরি
REST API তৈরির জন্য একটি কন্ট্রোলার তৈরি করুন।
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/employees")
public class EmployeeController {
@Autowired
private EmployeeRepository employeeRepository;
@GetMapping
public List<Employee> getAllEmployees() {
return employeeRepository.findAll();
}
@PostMapping
public Employee createEmployee(@RequestBody Employee employee) {
return employeeRepository.save(employee);
}
@PutMapping("/{id}")
public Employee updateEmployee(@PathVariable Long id, @RequestBody Employee employeeDetails) {
Employee employee = employeeRepository.findById(id).orElseThrow();
employee.setName(employeeDetails.getName());
employee.setDepartment(employeeDetails.getDepartment());
return employeeRepository.save(employee);
}
@DeleteMapping("/{id}")
public void deleteEmployee(@PathVariable Long id) {
employeeRepository.deleteById(id);
}
}
৭. অ্যাপ্লিকেশন চালানো
Spring Boot অ্যাপ্লিকেশন চালানোর জন্য @SpringBootApplication অ্যানোটেশনসহ main ক্লাস লিখুন:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringBootOrmApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootOrmApplication.class, args);
}
}
প্রোগ্রাম আউটপুট
- অ্যাপ্লিকেশন চালু করার পরে H2 ডেটাবেসের কনসোল ব্যবহার করতে পারেন। এটি ব্রাউজারে
http://localhost:8080/h2-consoleURL-এ পাওয়া যাবে। GET,POST,PUT, এবংDELETEরিকোয়েস্ট ব্যবহার করে REST API পরীক্ষা করতে পারেন। উদাহরণস্বরূপ:POSTরিকোয়েস্ট দিয়ে নতুনEmployeeযোগ করুন:{ "name": "John Doe", "department": "Engineering" }GETরিকোয়েস্ট দিয়ে সমস্তEmployeeদেখুন।PUTরিকোয়েস্ট দিয়েEmployeeআপডেট করুন।DELETEরিকোয়েস্ট দিয়েEmployeeমুছে ফেলুন।
Spring Boot ORM এর এই উদাহরণটি আপনাকে একটি প্রাথমিক ধারণা দেবে কিভাবে Spring Boot এবং JPA ব্যবহার করে সহজেই ডেটাবেস অপারেশন করা যায়।
Read more